#define COL_IMPLEMENTATION
#include "col.hol.h"
#include <stdio.h>

int main() {
    char buf[COL_MAX_FORMATTED];
    char ctrl[COL_MAX_CTRL];

    // 初始化颜色库
    col_init();

    // 检查颜色支持
    if (!col_supported()) {
        printf("终端不支持颜色输出\n");
        return 0;
    }

    // 设置终端标题
    col_set_title("颜色库演示", ctrl);
    printf("%s", ctrl);

    // 基础颜色文本
    col_format("红色粗体文本", COL_RED, COL_BOLD, buf);
    printf("%s\n", buf);

    // 高级格式化 - RGB颜色
    col_format_advanced("天蓝色文本带粉色背景",
                       COL_RGB, 135, 206, 235,  // 天蓝色
                       COL_RGB, 255, 192, 203,  // 粉色
                       COL_ITALIC, buf);
    printf("%s\n", buf);

    // HSL颜色示例 - 绿色系
    col_set_fg_hsl(120, 0.7, 0.5, ctrl);  // 饱和度70%，亮度50%的绿色
    printf("%sHSL颜色示例%s\n", ctrl, COL_RESET);

    // 256色示例
    col_set_fg_256(166, ctrl);  // 棕色
    printf("%s256色模式示例%s\n", ctrl, COL_RESET);

    // 光标控制
    col_cursor_move(COL_DOWN, 1, ctrl);
    printf("%s", ctrl);

    // 居中对齐文本
    col_align("居中对齐的文本", COL_ALIGN_CENTER, buf);
    printf("%s\n", buf);

    // 重置终端
    col_reset(ctrl);
    printf("%s", ctrl);

    return 0;
}
